home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1996 March / Amiga-CD 1996 #3.iso / amiga_technologies / include_i / intuition / classusr.i < prev    next >
Text File  |  1996-01-19  |  3KB  |  92 lines

  1.     IFND INTUITION_CLASSUSR_I
  2. INTUITION_CLASSUSR_I SET 1
  3. **
  4. ** $VER: classusr.i 38.1 (11.11.91)
  5. ** Includes Release 40.16
  6. **
  7. ** For application users of Intuition object classes
  8. **
  9. **  (C) Copyright 1989-1995 ESCOM AG
  10. **        All Rights Reserved
  11. **
  12.  
  13.  
  14.  
  15.     IFND UTILITY_HOOKS_I
  16.     INCLUDE "utility/hooks.i"
  17.     ENDC
  18.  
  19. * beginning of "method message" passed to class dispatchers
  20.  STRUCTURE Msg,0
  21.     ULONG msg_MethodID
  22.     ; method-specific data follows, some examples below
  23.  
  24. * For now, see the class id's for Intuition basic classes
  25. * defined in classusr.h.  Sorry there aren't macros for the strings yet.
  26.  
  27. * dispatched method ID's
  28. * NOTE: Applications should use Intuition entry points, not these,
  29. * for NewObject, DisposeObject, SetAttrs, SetGadgetAttrs, and GetAttr.
  30.  
  31.     ENUM $101
  32.     EITEM OM_NEW        ; 'object' parameter is "true class"
  33.     EITEM OM_DISPOSE        ; delete self (no parameters)
  34.     EITEM OM_SET        ; set attribute (list)
  35.     EITEM OM_GET        ; return single attribute value    
  36.     EITEM OM_ADDTAIL        ; add self to a List
  37.     EITEM OM_REMOVE        ; remove self from list (no parameters)
  38.     EITEM OM_NOTIFY        ; send to self: notify dependents
  39.     EITEM OM_UPDATE        ; notification message from someone
  40.     EITEM OM_ADDMEMBER        ; used by various classes with lists
  41.     EITEM OM_REMMEMBER        ; used by various classes with lists
  42.  
  43. * Parameter "Messages" passed to methods.
  44. * NOTE: All of these parameter packets
  45. * start off by the longword MethodID, but
  46. * we don't redefine it for each structure.
  47.  
  48. * OM_NEW and OM_SET
  49.  STRUCTURE opSet,4
  50.     ; ULONG        MethodID
  51.     APTR        ops_AttrList    ; new attributes
  52.     APTR        ops_GInfo    ; always there for gadgets,
  53.                     ; but will be NULL for OM_NEW
  54.  
  55. * OM_NOTIFY, and OM_UPDATE
  56.  STRUCTURE opUpdate,4
  57.     ; ULONG        MethodID
  58.     APTR        opu_AttrList    ; new attributes
  59.     APTR        opu_GInfo    ; always there for gadgets,
  60.                     ; but will be NULL for OM_NEW
  61.     ULONG        opu_Flags    ; defined below
  62.  
  63. * this flag means that the update message is being issued from
  64. * something like an active gadget, ala GACT_FOLLOWMOUSE.  When
  65. * the gadget goes inactive, it will issue a final update
  66. * message with this bit cleared.  Examples of use are for
  67. * GACT_FOLLOWMOUSE equivalents for propgadclass, and repeat strobes
  68. * for buttons.
  69.  
  70. OPUB_INTERIM    EQU    0
  71. OPUF_INTERIM    EQU    1
  72.  
  73. * OM_GET
  74.  STRUCTURE opGet,4
  75.     ; ULONG        MethodID
  76.     ULONG        opg_AttrID
  77.     APTR        opg_Storage    ; may be other types, but "int"
  78.                     ; types are all ULONG
  79.  
  80. * OM_ADDTAIL
  81.  STRUCTURE opAddTail,4
  82.     ; ULONG        MethodID
  83.     APTR        opat_List
  84.  
  85. * OM_ADDMEMBER, OM_REMMEMBER
  86.  
  87.  STRUCTURE opMember,4
  88.     ; ULONG        MethodID
  89.     APTR        opam_Object
  90.  
  91.  ENDC    ; IFND INTUITION_CLASSUSR_I
  92.